Cadmium: An Implementation of ACD Term Rewriting

نویسندگان

  • Gregory J. Duck
  • Leslie De Koninck
  • Peter J. Stuckey
چکیده

Cadmium is a rule based programming language for compiling solver independent constraint models to various solver dependent back-ends. Cadmium is based on a hybrid between Constraint Handling Rules (CHR) and term rewriting modulo Associativity, Commutativity and a restricted form of Distributivity (ACD) called Conjunctive Context (CC). Experience with using Cadmium in the G12 project shows that CC is a powerful language feature, as local model mapping can depend on some non-local context, such as variable declarations or other constraints. However, CC significantly complicates the Cadmium normalisation algorithm, since the normal form of a term may depend on what context it appears in. In this paper we present an implementation of Cadmium based on classic bottom-up evaluation, but modified to handle CC matching. We evaluate the performance of the new implementation compared to earlier prototype normalisation algorithms. We show that the resulting system is fast enough to run “real-world” Cadmium applications.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Demand-Driven Normalisation for ACD Term Rewriting

ACD Term Rewriting (ACDTR) is term rewriting modulo associativity, commutativity, and a limited form of distributivity called conjunctive context. Previous work presented an implementation for ACDTR based on bottom-up eager normalisation, extended to support the conjunctive context. This paper investigates the possibility of using a demand-driven normalisation strategy for ACDTR. Again, dealing...

متن کامل

ACD Term Rewriting

In this paper we introduce Associative Commutative Distributive Term Rewriting (ACDTR), a rewriting language for rewriting logical formulae. ACDTR extends AC term rewriting by adding distribution of conjunction over other operators. Conjunction is vital for expressive term rewriting systems since it allows us to require that multiple conditions hold for a term rewriting rule to be used. ACDTR u...

متن کامل

Lazy Rewriting on Eager

We deene Lazy Term Rewriting Systems and show that they can be realized by local adaptations of an eager implementation of conventional term rewriting systems. The overhead of lazy evaluation is only incurred when lazy evaluation is actually performed. Our method is modelled by a transformation of term rewriting systems, which concisely expresses the intricate interaction between pattern matchi...

متن کامل

Conditional Term Graph Rewriting

For eeciency reasons, term rewriting is usually implemented by graph rewriting. It is known that graph rewriting is a sound and complete implementation of (almost) orthogonal term rewriting systems; see BEG + 87]. In this paper, we extend the result to properly oriented orthogonal conditional systems with strict equality. In these systems extra variables are allowed in conditions and right-hand...

متن کامل

Abstraction of Conditional Term Rewriting Systems

This paper introduces the notion of abstract domains for constructor-based conditional term rewriting systems and deenes the notion of abstract term rewriting systems (abstract TRS) over these domains. These new term rewriting systems are mainly used to determine or to approximate the normal forms of ground instances of concrete terms (with variables). We propose a method to compute such an abs...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2008